#ifndef	_DATA_CAPTURE_SERVER_H_
#define	_DATA_CAPTURE_SERVER_H_

#include <muduo/base/Atomic.h>
#include <muduo/base/Types.h>
#include <muduo/net/TcpConnection.h>

#include <map>
#include <boost/noncopyable.hpp>
#include <boost/scoped_ptr.hpp>
#include <boost/shared_ptr.hpp>

class Acceptor;
class EventLoop;
class EventLoopThreadPool;

class DataCaptureServer : boost::noncopyable
{
public:
	typedef	boost::function<void(EventLoop *)> ThreadInitCallback;
	enum Option
	{
		kNoReusePort,
		kReusePort,
	};
	DataCaptureServer(EventLoop *loop,
			const string& device,
			const uint32_t snaplen,
			const uint32_t flags);
	~DataCaptureServer();
};

#endif

